import time

from wordpress_project.base.base_page import Tools


class login_tool(Tools):
    """页面元素定位"""
    login_url = 'http://192.168.0.125:9009/wp-login.php'
    username = '[name="log"]'  # 用户名css定位
    password = '[id="user_pass"]'  # 密码css定位
    login_button = '[name="wp-submit"]'  # 登录按钮css定位
    login_success_ele = '[id="wp-admin-bar-my-account"] a'  # 登录成功 之后的断言定位
    login_fail_ele = '[id="login_error"]'  # 登录失败 之后的 断言定位

    def login_action(self, usr, pwd):
        # 在方法中调用同一个类的其他方法， self.方法名  在方法中，调用类的变量self.变量名
        self.visit(self.login_url)
        self.by_css(self.username).send_keys(usr)
        time.sleep(1)
        self.by_css(self.password).send_keys(pwd)
        time.sleep(1)
        self.by_css(self.login_button).click()
        time.sleep(1)
        self.img()  # 调用截图

    def get_success_msg(self):
        return self.by_css(self.login_success_ele).text

    def get_fail_msg(self):
        return self.by_css(self.login_fail_ele).text


from selenium import webdriver

d = webdriver.Chrome()
a = login_tool(driver=d)
a.login_action(usr='admin', pwd='admin123')
a.quit()
